/* @flow */

import { isPreTag, mustUseProp, isReservedTag, getTagNamespace } from '../util/index'

import modules from './modules/index'
import directives from './directives/index'
import { genStaticKeys } from 'shared/util'
import { isUnaryTag, canBeLeftOpenTag } from './util'

export const baseOptions: CompilerOptions = {
    expectHTML: true,
    // 模块
    modules,
    directives,
    // 是否为preTag
    isPreTag,
    // 是否为一元标签，自闭合标签，例如 <div/>
    isUnaryTag,
    mustUseProp,
    canBeLeftOpenTag,
    // 是否为html保留标签
    isReservedTag,
    getTagNamespace,
    staticKeys: genStaticKeys(modules)
}
